﻿using System;
using KPIS.GERP.GIMS.MODEL;
using System.Collections.Generic;
using KPIS.DBM;

namespace KPIS.GERP.GIMS.IDAL
{
    public interface IDALPrePurchaseRequestItem
    {
        IList<PrePurchaseRequestItemInfo> GetPrePurchaseRequestItem();
        IList<PrePurchaseRequestItemInfo> GetPrePurchaseRequestItem(string record_status);
        PrePurchaseRequestItemInfo GetPrePurchaseRequestItem(int seq);
        IList<PrePurchaseRequestItemInfo> GetBookMoney(int PrSeq);
        IList<PrePurchaseRequestItemInfo> GetBookMoneyForBidder(int PrSeq);
        IList<PrePurchaseRequestItemInfo> GetBookMoneyForBid(int bid_Seq);
        IList<PrePurchaseRequestItemInfo> GetBookMoneyForPurchaseOrder(int po_Seq);
        IList<PrePurchaseRequestItemInfo> GetBookMoneyForDeliveryNote(int dn_seq);
        IList<PrePurchaseRequestItemInfo> GetPrePurchaseRequestItemWithParent(int ppr_seq);
        string GetPrePurchaseRequestRule(int ppr_seq);
        IList<PrePurchaseRequestItemInfo> GetCollectItemName();
        void Insert(IList<PrePurchaseRequestItemInfo> infoList, int ppr_seq);
        void Insert(IList<PrePurchaseRequestItemInfo> infoList, int ppr_seq, IDBManager dbManagerTrans);
        void Update(PrePurchaseRequestItemInfo info);
        void Delete(PrePurchaseRequestItemInfo info);
        void DeleteAll(IList<PrePurchaseRequestItemInfo> infoList);
        void DeleteFromDB(IList<PrePurchaseRequestItemInfo> infoList);
        void Restore(IList<PrePurchaseRequestItemInfo> infoList);
        void UpdateAmount(IList<PrePurchaseRequestItemInfo> infoList, IDBManager dbManagerTrans);
        string CheckPurchaseRequestMoney(int pr_seq, IDBManager dbManagerTrans);
        string CheckPurchaseRequestMoneyUrgent(int pr_seq, IDBManager dbManagerTrans);
    }
}
